
package trim.scripting.interfaces;

/**
 * IStateWindow.java
 *
 * Интерфейс обращения к статусному окну
 *
 * @author Podorov Alexander
 */

public interface IStateWindow
{
    /**
     * Отображение текста в окне
     * 
     * @param text - текст для вывода
     */
    public void setText(String text);

    /**
     * Установка видимости прогресса выполнения скрипта
     *
     * @param isVisible - видимость
     */
    public void setProgressBarVisible(boolean isVisible);

    /**
     * Установка видимости журнала скрипта
     *
     * @param isVisible - видимость
     */
    public void setLogVisible(boolean isVisible);

    /**
     * Установка минимального значения для прогресса выполнения
     *
     * @param minimum
     */
    public void setProgressBarMinimum(int minimum);

    /**
     * Установка максимального значения для прогресса выполнения
     *
     * @param maximum
     */
    public void setProgressBarMaximum(int maximum);

    /**
     * Установка текущего статуса выполнения
     *
     * @param value
     */
    public void setProgressBarValue(int value);

    /**
     * Добавить запись в журнал без перевода на новую строку
     *
     * @param note - запись
     */
    public void logPrint(String note);

    /**
     * Добавить запись в журнал с переводом на новую строку
     *
     * @param note
     */
    public void logPrintln(String note);
}
